package com.ruoyi.iot.service;

import com.ruoyi.iot.domain.enums.DeviceTimeScope;
import java.util.Map;

/**
 * 告警记录服务
 */
public interface DeviceAlarmRecordService {

    /**
     * 根据设备最新窗口计算并保存告警记录。
     *
     * @param deviceId 设备编号
     */
    void syncLatestRecords(String deviceId);

    /**
     * 统计指定时间范围内不同数据来源的告警数量。
     *
     * @param deviceId 设备编号
     * @param scope    时间范围
     * @return 统计结果，包含electric/alarm/fault/temperature/total键
     */
    Map<String, Long> countAlarmLevels(String deviceId, DeviceTimeScope scope);
}
